A current trend is for electronic devices to have more features. This can make the electronic devices difficult to configure.
A user of a device may spend a considerable amount of time and effort configuring a device's settings so that it works correctly and/or as they would wish. A new device may appear less attractive to a user because the time and effort required may be very great.
This is particularly true for mobile cellular telephones. Mobile telephones are typically designed so that they can be configured for use in any one of a plurality of different cellular radio telephone networks controlled by different operators. However, each operator may require different settings to enable the telephone to operate correctly or in the way in which the operator desires. The operator (service provider) may wish to customise the mobile telephone with the necessary settings. In addition, a mobile telephone is personal device and a user may wish to configure it with their favorite ring tones, internet bookmarks, screen savers etc.
It is therefore desirable to provide some form of automatic set-up process for electronic devices and, in particular, mobile cellular telephones.
It would be desirable for this set-up process to be such that it can be used with more than one electronic device without specific adaptation for that device. For example, it would be desirable if the set-up process may be used to initially configure all or most mobile cellular telephones.
The inventors considered whether automatic set-up would be possible using a SyncML message to transfer data to a target device and perform executables on the transferred data at the target device.
SyncML™ Device Management (DM) is an open, universal industry standard. It gives third parties, such as service providers and corporate information management departments, the ability to create and manage a management tree stored in a mobile device. SyncML Device Management Tree and Description, v1.1.1, 10th Feb. 2003, (www.syncml.org) describes the creation and maintenance of a management tree. A management tree has nodes connected by branches. Each node can be uniquely addressed by a URI. A node may be an interior node, which may have any number of child (dependent) nodes, but cannot store any value or a node may be a leaf node, which cannot have child (dependent) nodes but can store a value. A value may be a string, a file, a number etc. SyncML DM therefore provides a mechanism for providing data on-the-fly to the mobile device.
SyncML Representation Protocol, v1.1, 15th Feb. 2002, (www.syncml.org) specifies the common Extensible Markup Language (XML) syntax and semantics usable by all SyncML protocols, including the Data Management (DM) protocol. The commands include: Add, Copy, Delete, Exec, Get, Replace. Exec allows the originator of the command to ask that a named executable is invoked by the recipient.
SyncML Device Management Tree and Description, v1.1.1, 10th Feb. 2003, (www.syncml.org) describes how Add is used to create a management tree. SyncML DM does not specify how an executable can be performed on particular data using SyncML DM. The exec command contains an item element, which contains a target element, which contains a LocURI element. The LocURI element specifies only the location of the executable in the device. Therefore the exec command does not allow the data to be used by the executable to be specified.
Furthermore the exec command requires the identification of a suitable executable in the target device. There must therefore be prior knowledge of the identity of the executable at a target device, which is specified in the LocURI element of the exec command. This is complex and inconvenient and prevents a single SyncML Message or Package being used with multiple mobile devices.
It would be desirable to create a SyncML code is suitable for performing a common process on a plurality of target devices that does not require specific adaptation for use with each device.
It would be desirable to instruct an executable to be performed on particular data using SyncML code that can be re-used for other devices.